
/* String
------------------------------------------------------------------------------------------- *//**
 *@Description  rgb(255,156,0)->#ff9c00
 *@Param  String rgb  "rgb(255,156,0)"
 *@return string
 */
function rgbTOhsl(rgb){
	if(rgb.match(/#/)) return rgb;
	var s='#',colorArr=rgb.match(/\d+/g);
		s+=(parseInt(colorArr[0],10)).toString(16);
		s+=(parseInt(colorArr[1],10)).toString(16);
		s+=(parseInt(colorArr[2],10)).toString(16);
	return s;
}
/**
 *@Description  替换双引号为单引号
 *@Param  String s  'asdkj"dsf'
 *@return string
 */
function repQuote(s){
   return s.replace('"','\'');
}

/* Array
------------------------------------------------------------------------------------------- */

/**
 *@Description  循环数组，等待t时间
 *@Param  Int start
 *@Param  Int end
 *@Param  Int step
 *@Param  Int t 时间
 *@Param  Function fn
 *@Param  Function endfn
 *@return string
 */
function waiteach(start, end, step, t, fn, endfn) {
    fn(start);
    if (start < end) {
        setTimeout(function() {
            start += step;
            waiteach(start, end, step, t, fn, endfn);
        }, t);
    } else if (typeof endfn == 'function') {
        endfn();
    }
}

/**
 * @Description 将一个数组插入另一个数组的指定位置：
 * @param a
 * @param b
 * @param insertIndex
 */
function insertIndexArr(a,b,insertIndex){
    return  a.splice.apply(a, Array.concat(insertIndex, 0, b));
}

/* Image
------------------------------------------------------------------------------------------- */
/**
 *@Description  等比列缩放
 *@Param  Array a  [120,120] 目标
 *@Param  Array b  [230,340] 图
 *@return Array
 */
function scaling(a,b){
	var c=[];
	if(a[0]>=b[0]&&a[1]>=b[1]){
		return b;
	}
	if(b[0]>=b[1]){
		c[0]=a[0];
		c[1]=b[1]*a[0]/b[0];

	}else{
		c[1]=a[1];
		c[0]=b[0]*a[1]/b[1];
	}
	return c;
}

/* Number
------------------------------------------------------------------------------------------- */
/**
 *@Description  用0补全位数
 * @param num
 * @param length
 */
function prefixInteger(num, length) {
    return (num / Math.pow(10, length)).toFixed(length).substr(2);
}

/**
 *@Description  漂亮的随机码
 */
function prandom() {
    return Math.random().toString(36).substring(2);
}



/* Mix
------------------------------------------------------------------------------------------- */
/**
 *@Description  在控制台输出变量
 *@Param  mix 任意多个  
 * 
 */
function logs() {
    var s = '';
    s = Array.prototype.join.call(arguments, ' ');
    if (window.console) {
        console.log(s);
    } else {
        alert(s);
    }
}
function write() {
    var s = '';
    for (var i = 0,aLen = arguments.length; i < aLen; i++) {
        s += arguments[i] + ' <br/>';
    }
    s = s.slice(0, -1);
    document.write(s);
}

/**
 * 函数节流
 * @param method
 * @param scope
 */
function throttle(method,time, scope) {
    clearTimeout(method.tId);
    method.tId= setTimeout(function(){
        method.call(scope||window);
    }, time);
}
